package com.linsy.product.redis.mq.service;

import com.linsy.product.redis.mq.entity.MqDataEntity;

import java.util.List;

public interface RedisMqSend<T> {

    /**
     * 业务系统发送消息，必须实现
     */
    void sendMsg(T t);

    /**
     * 业务系统发送消息前操作，可选实现
     */
    void beforeSend(List<MqDataEntity> entityList);

    /**
     * 业务系统发送消息后操作，可选实现
     */
    void afterSend(List<MqDataEntity> entityList);

    /**
     * 转换为队列，必须实现
     */
    List<Object> convert(T t);
}
